﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;

namespace WPF.Element.UI.CustomControls
{
    /// <summary>
    /// 多选按钮
    /// </summary>
    public class ElCheckBox:CheckBox
    {

        static ElCheckBox()
        {
            DefaultStyleKeyProperty.OverrideMetadata(typeof(ElCheckBox), new FrameworkPropertyMetadata(typeof(ElCheckBox)));
        }


        /// <summary>
        /// 选中框的宽带和高度
        /// </summary>
        public static readonly DependencyProperty ElCheckBoxHeightAndWidthProperty =
            DependencyProperty.Register("ElCheckBoxHeightAndWidth", typeof(double), typeof(ElCheckBox));   // new PropertyMetadata(0, null)

        /// <summary>
        /// 选中框的宽带和高度
        /// </summary>
        public double ElCheckBoxHeightAndWidth
        {
            get
            {
                return (double)GetValue(ElCheckBoxHeightAndWidthProperty);
            }
            set
            {
                SetValue(ElCheckBoxHeightAndWidthProperty, value);
            }
        }



        /// <summary>
        /// 选中的前景色
        /// </summary>
        public static readonly DependencyProperty CheckForegroundProperty =
            DependencyProperty.Register("CheckForeground", typeof(Brush), typeof(ElCheckBox));   // new PropertyMetadata(0, null)

        /// <summary>
        /// 选中的前景色
        /// </summary>
        public Brush CheckForeground
        {
            get
            {
                return (Brush)GetValue(CheckForegroundProperty);
            }
            set
            {
                SetValue(CheckForegroundProperty, value);
            }
        }


        /// <summary>
        /// 选中的背景色
        /// </summary>
        public static readonly DependencyProperty CheckBackgroundProperty =
            DependencyProperty.Register("CheckBackground", typeof(Brush), typeof(ElCheckBox));   // new PropertyMetadata(0, null)

        /// <summary>
        /// 选中的背景色
        /// </summary>
        public Brush CheckBackground
        {
            get
            {
                return (Brush)GetValue(CheckBackgroundProperty);
            }
            set
            {
                SetValue(CheckBackgroundProperty, value);
            }
        }


        /// <summary>
        /// 选中的边框色
        /// </summary>
        public static readonly DependencyProperty CheckBorderBrushProperty =
            DependencyProperty.Register("CheckBorderBrush", typeof(Brush), typeof(ElCheckBox));   // new PropertyMetadata(0, null)

        /// <summary>
        /// 选中的边框色
        /// </summary>
        public Brush CheckBorderBrush
        {
            get
            {
                return (Brush)GetValue(CheckBorderBrushProperty);
            }
            set
            {
                SetValue(CheckBorderBrushProperty, value);
            }
        }

    }
}
